package com.gt.util.model;

import java.sql.Timestamp;

/**
 * @author WUREN
 * @desc 设备类
 * @create 2019-02-21 16:51
 **/
public class Device {
    /**
     * 主键
     */
    private Integer id;
    /**
     * IoT平台为该设备颁发的设备ID，作为该设备的唯一标识符
     */
    private String iotId;
    /**
     * 设备隶属的产品Key
     */
    private String productKey;
    /**
     * 设备名称/SN号
     */
    private String deviceName;
    /**
     * 设备密钥
     */
    private String deviceSecret;
    /**
     * 设备创建时间
     */
    private String gmtCreate;
    /**
     * 设备激活时间
     */
    private String gmtActive;
    /**
     * 设备最后一次上线时间
     */
    private String gmtOnline;
    /**
     * 设备状态：
     * ONLINE：设备在线
     * OFFLINE：设备离线
     * UNACTIVE：设备未激活
     * DISABLE：设备已禁用
     */
    private String status;
    /**
     * 设备的固件版本号
     */
    private String firmwareVersion;
    /**
     * 设备IP地址
     */
    private String ipAddress;
    /**
     * 节点类型：
     * 0：设备。设备不能挂载子设备，可以直连IoT Hub，也可以作为网关的子设备连接IoT Hub。
     * 1：网关。网关可以挂载子设备，具有子设备管理模块，维持子设备的拓扑关系，并且可以将拓扑关系同步到云端。
     */
    private Integer nodeType;
    /**
     * 设备所在地区（与控制台上的物联网地平台服务地域对应）
     */
    private String region;

    /**
     * 记录有效性标识
     * 0：无效
     * 1：有效
     */
    private int state;

    private Timestamp deleteTime;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getIotId() {
        return iotId;
    }

    public void setIotId(String iotId) {
        this.iotId = iotId;
    }

    public String getProductKey() {
        return productKey;
    }

    public void setProductKey(String productKey) {
        this.productKey = productKey;
    }

    public String getDeviceName() {
        return deviceName;
    }

    public void setDeviceName(String deviceName) {
        this.deviceName = deviceName;
    }

    public String getDeviceSecret() {
        return deviceSecret;
    }

    public void setDeviceSecret(String deviceSecret) {
        this.deviceSecret = deviceSecret;
    }

    public String getGmtCreate() {
        return gmtCreate;
    }

    public void setGmtCreate(String gmtCreate) {
        this.gmtCreate = gmtCreate;
    }

    public String getGmtActive() {
        return gmtActive;
    }

    public void setGmtActive(String gmtActive) {
        this.gmtActive = gmtActive;
    }

    public String getGmtOnline() {
        return gmtOnline;
    }

    public void setGmtOnline(String gmtOnline) {
        this.gmtOnline = gmtOnline;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getFirmwareVersion() {
        return firmwareVersion;
    }

    public void setFirmwareVersion(String firmwareVersion) {
        this.firmwareVersion = firmwareVersion;
    }

    public String getIpAddress() {
        return ipAddress;
    }

    public void setIpAddress(String ipAddress) {
        this.ipAddress = ipAddress;
    }

    public Integer getNodeType() {
        return nodeType;
    }

    public void setNodeType(Integer nodeType) {
        this.nodeType = nodeType;
    }

    public String getRegion() {
        return region;
    }

    public void setRegion(String region) {
        this.region = region;
    }

    public int getState() {
        return state;
    }

    public void setState(int state) {
        this.state = state;
    }

    public Timestamp getDeleteTime() {
        return deleteTime;
    }

    public void setDeleteTime(Timestamp deleteTime) {
        this.deleteTime = deleteTime;
    }
}
